1. Field of Invention
This invention relates to a code development environment for digital signal processors (DSP) and in particular fixed point DSP's for the ease of code development and debug, and for porting the code to other brands and types of digital signal processors.
2. Description of Related Art
There are several existing code development tools that are available for particular brands or types of DSP's. The problem is that if one needs to port the code to a different DSP it entails a considerable rewrite to adjust to the different architecture. Coupled with this is the need to translate digital formats during code development and debug. This is particular acute for a fixed point DSP that is dealing with floating point operations and usually requires tedious time consuming conversions during debug using a hand calculator or the equivalent to check whether the correct data is being generated. In addition code developed in DSP assembly language is time consuming and using a higher level language like C programming language for a fixed point DSP can create problems because of inconsistent code optimization and truncation error.
Referring to U.S. Pat. No. 5,247,668 (Smith et al.) a compiler is used to develop code for a specific DSP application. Whereas the techniques in this invention could be applicable elsewhere, it is not readily available to create code for other DSP applications without considerable rework and restructuring. In U.S. Pat. No. 5,375,228 (Leary et al.) is described an emulation system to debug software for a DSP. This is an application dependent configuration which integrates a digital signal analyzer into a specific DSP emulation system.
Commercial vendors for DSP products, such as IBM with their Mwave DSP, provide development tool kits for programming and debug of application software to run their DSP. The tool kit allows programming in C language or in assembly language, and real time debugging with data being displayed on the computer system monitor. As with other vendors, this tool kit does not provide the capability to easily port code for use with other types and makes of DSP's.
Existing development tools are available for a single type DSP and do not provide a universal capability that can easily produce code for various DSP types and brands. Thus the porting of code to other brand of DSP entails a considerable rewrite and additional debug. Working with fixed point DSP's requires a considerable amount of effort in the debug phase to manually convert to other numerical formats which are more appropriate by using hand calculators or equivalent. Determining the floating point, decimal and thirty-two bit formats from an integer DSP is equally a chore especially when converting code for another type DSP that is not being done by the original programmer. For situations where various types and brands of DSP are being used, there is a need for a universal programming environment which allows for easy debug and porting of code.